<!DOCTYPE html>
<html>

	<head>
		<meta charset="UTF-8">
		<title></title>
		<style type="text/css">
			.time{
				width: 100%;
				height: 50px;
				line-height: 50px;
				font-size: 25px;
				color: green;
				margin: 200px auto;
				text-align: center;
			}
		</style>
	</head>

	<body>
		<a href="zuoye2.html">作业2</a>
		<div class="time">
			
		</div>
		<script type="text/javascript">
			//1.Date()与new Date()的区别
				var a = Date(0);
				var b = new Date(0);
				console.log(a);
				console.log(b);
				console.log("Date()只是获取当前时间的一个方法，new Date()是实例化一个时间对象，里面包含了关于时间的各种内置方法");
				
			//2.var date =new Date("2016-05-31 08:00")与var date =new Date("2016/05/31 08:00")的区别
				var time1 = new Date("2016-05-31 08:00");
				var time2 = new Date("2016/05/31 08:00");
				console.log(time1);
				console.log(time2);
				console.log("没有区别");
			//3.console.log( 0.1 + 0.2 )为什么会输出 0.30000000000000004
			
			//4.请解析以下代码为什么会输出1,2,3
			//						console.log("1");
			//						setTimeout(function() {
			//							console.log("3")
			//						}, 0);
			//						console.log("2");
				
			//5.请解释下面代码运行的结果
			//						var a = "one";
			//						if(a) {
			//							console.log(a == true);
			//						} else {
			//							console.log("Melon");
			//						}
				console.log("a = one，如果a不为underfunded，结果就为真，否则为假，所以执行console.log(a == true),因为a转换为布尔值不为true，所以打印结果为false");
				
			//6.请分析console.log(1 + - + + + - + 1)的结果为什么等于2
			
			//7.Math.round、parseInt、Math.floor和Math.ceil的区别
				console.log("四舍五入，转化为整数，向下取整，向上取整");
			//8.计算出计算机从一加到一百万所用的时间
			//提示，获取当前的时间戳    (new Date()).getTime()
			var now_time = new Date().getTime();
			var num = 0;
			for(var i = 1;i<=1000000;i++){
				num += i;
			}
			var last_time = new Date().getTime();
			console.log(Math.abs(now_time-last_time)+"毫秒");
			//9.输出从小到大排序好的五个不重复的随机整数,范围[10-23)
				var arr = [];
				for(var i = 0;i<500000;i++){
					var num = Math.floor(Math.random()*14+10);
					arr.push(num);
					for(var j = 0;j<arr.length-1;j++){
						if(arr[arr.length-1] == arr[j]){
							arr.pop();
						}
					}
					if(arr.length>=5){
						break;
					}
				}
				arr.sort(function(a,b){
					return a-b;
				})
				console.log(arr);
			//10.实现一个必须大于当前时间的倒计时(X天X时X分X秒)
			function countDown(time){
				var div = document.querySelector(".time");
				div.timer = setInterval(function(){
					var now_time = new Date().getTime();
					var last_time = new Date(time).getTime();
					var time_differ = last_time - now_time;
					if(time_differ<0){
						div.innerHTML = "倒计时结束";
					}
					
					var day = Math.floor(time_differ/1000/60/60/24);
					var hours = Math.floor(time_differ/1000/60/60%24);
					var min = Math.floor(time_differ/1000/60%60);
					var second = Math.floor(time_differ/1000%60);
					
					day = day<10?"0"+day:day;
					hours = hours<10?"0"+hours:hours;
					min = min<10?"0"+min:min;
					second = second<10?"0"+second:second;
					
					div.innerHTML = "倒计时："+day+"天"+hours+"时"+min+"分"+second+"秒"; 
				},1000)
			}
			countDown("2018/01/01 08:00:00");
			/***********************************
			10个不能重复的随机数要求为55-109的整数，并且将10个随机数里面能够被5整除的数进行叠加
			要将10个随机数打印出来,将被3整除的数打印出来,最后将叠加的结果打印出来
			***********************************/
			var arr_random = [];
			var arr_3 = [];
			var o = 0;
			for(var i = 0;i<1000000;i++){
				var num = Math.floor(Math.random()*(109-55+1)+55);
				arr_random.push(num);
				for(var j = 0;j<arr_random.length-1;j++){
					if(arr_random[arr_random.length-1] == arr_random[j]){
						arr_random.pop();
					}
				}
				if(arr_random.length>=10){
					break;
				}
			}
			for(var i =0;i<arr_random.length;i++){
				if(arr_random[i]%5 == 0){
					o += arr_random[i];
				}
				if(arr_random[i]%3 == 0){
					arr_3.push(arr_random[i])
				}
			}
			console.log(arr_random);
			console.log(arr_3);
			console.log(o);
		</script>
	</body>

</html>